Charge storage transistors are transistors which contain a charge storage region. These transistors may be used in memory devices, such as in electrically erasable programmable memories (EEPROM). The charge storage transistors may be programmed by Fowler-Nordheim (FN) tunneling or by channel hot electron (CHE) injection. In FN tunneling programming, a voltage is applied between a word line and a source or a drain bit line of a charge storage transistor. In CHE programming, a voltage is applied between a source bit line and a drain bit line of a charge storage transistor.